package com.laysonx.data.police.handler;

/**
 * @description: 清洗待验证数据接口
 * @author: Laysonx
 * @date: 2019/9/26 17:11
 */
public interface DataHandler {

    /**
     * 处理特殊数据结构返回可进行验证的对象
     * @author: Laysonx
     * @date: 2019/9/26 18:20
     * @param t 待清洗对象
     * @return: java.lang.Object 清洗后的对象
     */
    <T> Object getResult(T t);

    /**
     * 待清洗的数据对象
     * @author: Laysonx
     * @date: 2019/9/29 15:35
     * @return: java.lang.Class 验证的数据对象
     */
    Class<?> getTargetClass();

    /**
     * 当前验证的target对应的tag标签
     * @author: laysonx
     * @date: 2019/11/4 10:24
     * @param
     * @return: java.lang.String Tag标签 默认 DEFAULT
     */
    String getTag();

}
